package JavaCode.top_interview_questions_easy.array;


public class seven {
    class Solution {
        public int[] plusOne(int[] digits) {
            int carry=0;
            digits[digits.length-1]++;
            for(int i=digits.length-1;i>=0;i--)
            {
                int temp=digits[i];
                digits[i]=(digits[i]+carry)%10;
                carry=(carry+temp)/10;
                if(carry==0)
                {
                    return digits;
                }
            }
            int[] ans=new int[digits.length+1];
            ans[0]=carry;
            System.arraycopy(digits,0,ans,1,digits.length);
            return ans;
        }
    }
}
/**
 * https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/1/array/27/
 * 给定一个由整数组成的非空数组所表示的非负整数，在该数的基础上加一。
 * 最高位数字存放在数组的首位， 数组中每个元素只存储一个数字。
 * 你可以假设除了整数 0 之外，这个整数不会以零开头。
 * 示例 1:
 * 输入: [1,2,3]
 * 输出: [1,2,4]
 * 解释: 输入数组表示数字 123。
 * 示例 2:
 * 输入: [4,3,2,1]
 * 输出: [4,3,2,2]
 * 解释: 输入数组表示数字 4321。
 */
